package chapter04

import scala.Console.println
import scala.util.control.Breaks
import scala.util.control.Breaks._

object Demo06_Break {
  def main(args: Array[String]): Unit = {
    //采用抛出异常的方式，退出循环
    /*try {
      for (i <- 1 to 3){
        if (i == 3)
          throw new RuntimeException
          println(i)
      }
      }catch {
      case e: Exception =>  //什么都不做只是退出循环
    }*/

    //使用Scala中的Break类中的break方法实现异常的抛出和捕捉
    //改进
    Breaks.breakable(
      for (i <- 0 until 5 ){
        if (i == 5 )
          Breaks.break()
          println(i)
      }
    )

    //改进
    //引入这个包 import scala.util.control.Breaks._ 后面加 ._ 就是引入里面所有的包
    breakable(
      for (i <- 0 until 5 ){
        if (i == 5 )
          break()
        println(i)
      }
    )



    println("这是循环外的代码")
  }

}
